home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World 2007 December
/
PCWorld_2007-12_cd.bin
/
domacnost a kancelar
/
autoit
/
autoit-v3-setup.exe
/
Examples
/
Helpfile
/
_SQLite_SQLiteExe.au3
< prev
next >
Wrap
Text File
|
2007-09-08
|
2KB
|
63 lines
#include <sqlite.au3>
#include <file.au3>
;Filenames
Local $sTsvFile = FileGetShortName(_TempFile(@ScriptDir,"~",".tsv"))
Local $sDbFile = FileGetShortName(_TempFile(@ScriptDir,"~",".db"))
;Create Tsv File
FileWriteLine($sTsvFile,"a" & @TAB & "b" & @TAB & "c")
FileWriteLine($sTsvFile,"a1" & @TAB & "b1" & @TAB & "c1")
FileWriteLine($sTsvFile,"a2" & @TAB & "b2" & @TAB & "c2")
;import (using SQLite3.exe)
Local $sIn,$sOut,$i, $sCreate = "CREATE TABLE TblImport (";
for $i = 1 To _StringCountOccurance(FileReadLine($sTsvFile,1),@TAB) + 1
$sCreate &= "Column_" & $i & ","
Next
$sCreate = StringTrimRight($sCreate,1) & ");"
$sIn = $sCreate & @CRLF ; Create Table
$sIn &= ".separator \t" & @CRLF ; Select @TAB as Separator
$sIn &= ".import '" & $sTsvFile & "' TblImport" & @CRLF
_SQLite_SQLiteExe($sDbFile,$sIn,$sOut)
If @error = 0 Then
;Show Table (using SQLite3.dll)
Local $iRows,$iColumns,$aRes
_SQLite_Startup()
_SQLite_Open($sDbFile)
_SQLite_GetTable2d(-1,"SELECT ROWID,* FROM TblImport;",$aRes,$iRows,$iColumns)
_SQLite_Display2DResult($aRes) ; Output to Console
_SQLite_Close()
_SQLite_Shutdown()
Else
If @error = 2 Then
ConsoleWrite("ERROR: Sqlite3.exe file not found" & @LF)
Else
ConsoleWrite("ERROR: @error=" & @error & " when calling _SQLite_SQLiteExe" & @LF)
EndIf
EndIf
;Remove Temp Files
FileDelete($sTsvFile)
FileDelete($sDbFile)
;~ Output:
;~ rowid Column_1 Column_2 Column_3
;~ 1 a b c
;~ 2 a1 b1 c1
;~ 3 a2 b2 c2
Func _StringCountOccurance($sSearchString,$sSubString,$fCaseSense = 0) ; Returns Number of $sSubString in $sSearchString
Local $iOccCnt = 1
Do
If StringInStr($sSearchString,$sSubString,$fCaseSense,$iOccCnt) > 0 Then
$iOccCnt += 1
Else
ExitLoop
EndIf
Until 0
Return $iOccCnt - 1
EndFunc